/* Copyright (c) 2004-2024 peigen.info. All rights reserved. */

package info.peigen.hotpot.business.customer.manage.form;

import info.peigen.hotpot.business.customer.facade.enums.CustomerStatus;
import info.peigen.hotpot.common.service.base.manage.ManageFormBase;
import jakarta.validation.constraints.Size;
import lombok.*;
import lombok.experimental.Accessors;
import lombok.experimental.FieldDefaults;
import lombok.experimental.SuperBuilder;

/**
 * <b>(CustomerManageSearchForm)</b>
 * 管理后台 查询"客户"表单
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2023-09-09
 */
@EqualsAndHashCode(callSuper = true)
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults(level = AccessLevel.PRIVATE)
@Accessors(chain = true)
public class CustomerManageSearchForm extends ManageFormBase {
    /** 客户Id */
    @Size(max = 30)
    String         customerId;
    /** 客户状态;INIT:初始化, QUICK_REGISTER:快速注册客户, UN_ACTIVATED:注册未激活, UN_CERT:未实名, CERT_PASS:已实名, NORMAL:正常客户, FREEZE:账户被冻结, UN_SUBSCRIBE:账户被注销 */
    @Size(max = 20)
    CustomerStatus status;
    /** 手机号 */
    @Size(max = 20)
    String         mobile;
    /** 代理商 */
    @Size(max = 30)
    String         proxyId;
    /** 销售Id */
    @Size(max = 30)
    String         salesId;
    /** 客服 */
    @Size(max = 30)
    String         customerServiceId;
    /** 合作伙伴Id */
    @Size(max = 30)
    String         partnerId;
}